1. Field of the Art
The present invention generally relates to making recommendations in an online search, and more particularly to a compositional recommender framework for use in creating recommendations in an on-demand database and/or application service.
2. Discussion of the Related Art
Cloud computing has become popular in the last few years. Cloud computing involves applications executing on general purpose servers out on a network. If one of the servers goes down, the an application executing on it is shifted to another server. More or fewer servers are employed depending on the processing power, memory, and bandwidth required for the application. The processing capacity of the servers is fungible between applications, and as such is treated as a commodity by some companies.
Because the processing power provided by the servers is oftentimes readily accessible over a high-speed network, some enterprising companies have outsourced their processing needs to other firms, including those that specialize in providing such processing power through their high-end servers.
Taking the cloud computing model further, some providers of server processing power have developed their own software applications to run on their own servers. The companies offer access to these web/cloud applications to other businesses on a pay-as-you-need or other contractual basis. These applications have traditionally been for common business functions, such as those provided by database applications to track sales leads and other opportunities for sales teams.
Although most cloud-based, provider-developed applications are accessed internally by employees of a company, other applications can be accessed directly by the company's retail customers. Those that are accessible by a company's customers are, understandably, tightly controlled by the company because the end-user experience is so important. A customer who is frustrated with a company's web interface may give up before making a purchase and go elsewhere. It is important for customers to have a good experience on a company's web site and be able to find what they want to purchase without difficulty. Offering recommendations to a user can enhance the user's shopping experience and also serve up opportunities for more sales from the company.
Many web/cloud applications provide recommendations to a user. The recommendations often are very specific to the applications and tightly coupled with the application itself. For example, an online bookseller's web site can recommend items for sale that may potentially interest a user. As another example, an online video rental web site can recommend movies that seem to fit users' preferences based on their previous rentals. These recommender systems are considered proprietary, and their inner workings are not exposed to the outside world.
Building proprietary recommender systems can be expensive, especially recommender systems that use clustering technologies. Of all recommender systems, those based on clustering sometimes deliver the most clever and unobvious recommendations, but with a price. Clustering algorithms are often complex and slow. They oftentimes require tuning by specialist consultants so that they work properly and give adequate, professional results. In contrast to clustering technologies, database lookup technologies are relatively fast, but they take time to establish and often require their own experts.
A better way of recommending questions to ask and obtaining information in general is needed.